1. Field of the Invention
The present invention relates to apparatuses for and methods of embedding and extracting digital information as well as a medium having a program for carrying out the method recorded thereon, and more particularly, to an apparatus for and a method of embedding, in order to protect the copyright of digital data, digital data such as copyright information (hereinafter referred to as digital information) in an image signal and extracting the embedded digital information as well as a medium having a program for carrying out the method recorded thereon.
2. Description of the Background Art
In recent years, information utilizing the Internet has been extensively provided. Particularly, WWW (World Wide Web) has been frequently utilized as an information transmitting/receiving service in which image, voice and so forth are integrated.
However, digital data such as an image which is made public on a network of the Internet can be easily copied by many and unspecified users. Therefore, some problems have arisen. For example, an image whose copyright is owned by a third person is secondarily utilized by making unauthorized copying thereof without the permission of the copyright holder. Further, also in expanding the business on the Internet using image-based contents, measures to prevent the unauthorized copying have been also a problem. Therefore, the establishment of a technique for protecting the copyright of an image signal has been damanded.
An example of the measures conventionally known is an electronic (digital) watermark technique. The digital watermarking is a technique for embedding digital information in image data in such a form that the embedded digital information cannot be perceived by human being.
Examples of the conventional digital watermark technique include a digital watermark technique using discrete wavelet transform described in an article entitled by Matsui, Ohnishi, Nakamura, xe2x80x9cEmbedding a Signature to Pictures under Wavelet Transformationxe2x80x9d (Journal of the Institute of Electronics, Information and Communication Engineers D-II VOL. J79-D-II, No. 6, PP.1017-1024, June 1996) (hereinafter referred to as a technique by Matui et al.). Further, another example is a digital watermark technique using discrete cosine transform (DCT) described in an article entitled by Nakamura, Ogawa, Takashima xe2x80x9cA method of Watermarking under Frequency Domain for Protecting Copyright of Digital Imagexe2x80x9d (The Symposium on Cryptography and Information Security, SCIS""97-26A, January 1997) (hereinafter referred to as a technique by Nakamura et al.).
The technique by Matui et al. will be first described with reference to FIGS. 23 to 25.
First, band division by discrete wavelet transform processing is described. FIG. 23 is a block diagram showing an example of the configuration of a conventional band dividing device 11 for division into three hierarchies. In FIG. 23, the conventional band dividing device 11 comprises first to third band dividing filters 100, 200 and 300 having the same configuration. Each of the first to third band dividing filters 100, 200 and 300 divides an input image into four frequency bands, and calculates wavelet coefficients for each of the frequency bands. As to the wavelet coefficients, sub-band division will do, which is not described herein.
The band dividing device 11 inputs a digitized image signal 71 into the first band dividing filter 100. The first band dividing filter 100 divides the image signal 71 into signals in four bands, i.e., an LL1 signal, an LH1 signal, an HL1 signal and an HH1 signal (hereinafter generically referred to as first hierarchical signal) on the basis of parameters of its horizontal and vertical frequency components. The second band dividing filter 200 receives the LL1 signal in the lowest band in the first hierarchical signal, and further divides the LL1 signal 71 into an LL2 signal, an LH2 signal, an HL2 signal and an HH2 signal in four bands (hereinafter generically referred to as second hierarchical signal). The third band dividing filter 300 receives the LL2 signal in the lowest band in the second hierarchical signal, and further divides the LL2 signal into an LL3 signal, and LH3 signal, an HL3 signal and an HH3 signal in four bands (hereinafter generically referred to as third hierarchical signal).
FIG. 24 is a block diagram showing an example of the detailed configuration of the first band dividing filter 100 shown in FIG. 23. In FIG. 24, the first band dividing filter 100 comprises first to third two-band division portions 101 to 103. The first to third two-band division portions 101 to 103 respectively comprise one-dimensional low-pass filters (LPFs) 111 to 113, one-dimensional high-pass filters (HPFs) 121 to 123, and sub-samplers 131 to 133 and 141 to 143 for decimating a signal at a ratio of 2:1.
The first two-band division portion 101 receives the image signal 71, and respectively subjects the image signal 71 to low-pass filtering and high-pass filtering with respect to its horizontal component by the LPF 111 and the HPF 121 to output two signals. The signals obtained by the low-pass filtering and the high-pass filtering are respectively decimated at a ratio of 2:1 using the sub-samplers 131 and 141, and are then outputted to the subsequent stage. The second two-band division portion 102 receives the signal from the sub-sampler 131, and respectively filters the signal with respect to its vertical component by the LPF 112 and the HPF 122 to obtain two signals, decimates the signals at a ratio of 2:1 using the sub-samplers 132 and 142, and then outputs the signals, i.e., an LL signal and an LH signal. On the other hand, the third two-band division portion 103 receives the signal from the sub-sampler 141, respectively filters the signal with respect to its vertical component by the LPF 113 and the HPF 123 to obtain two signals, decimates the signals at a ratio of 2:1 using the sub-samplers 133 and 143, and then outputs the signals, i.e., an HL signal and an HH signal.
Consequently, the four signals, i.e., the LL1 signal which is low in both its horizontal and vertical components, the LH1 signal which is low in its horizontal component but is high in its vertical component, the HL1 signal which is high in its horizontal component but is low in its vertical component, and the HH1 signal which is high in both its horizontal and vertical components, that is, wavelet coefficients are outputted from the first band dividing filter 100. The second and third bank dividing filters 200 and 300 also respectively subject the received signals to the same processing as described above.
As a result of the band division processing performed by the first to third band dividing filters 100, 200 and 300, the image signal 71 is divided into ten band signals, i.e., an LL3 signal, an LH3 signal, an HL3 signal, an HH3 signal, an LH2 signal, an HL2 signal, an HH2 signal, an LH1 signal, an HL1 signal and an HH1 signal. FIG. 25 is a diagram showing representation of the ten band signals by a two-dimensional frequency region.
In FIG. 25, the vertical axis represents a vertical frequency component, which increases as is directed downward, and the horizontal axis represents a horizontal frequency component, which increases as is directed rightward. Each of regions shown in FIG. 25 is data serving as one image, and the area ratio of the regions coincides with the ratio of the respective numbers of data in the band signals. That is, in a case where the number of data in the LL3 signal, the LH3 signal, the HL3 signal and the HH3 signal which are the third hierarchical signal is taken as one, the number of data in the LH2 signal, the HL2 signal and the HH2 signal which are the second hierarchical signal is 4, and the number of data in the LH1 signal, the HL1 signal and the HH1 signal which are the first hierarchical signal is 16. Consequently, with respect to one data at the upper left of the LL3 signal, for example, one data at the upper left of each of the LH3 signal, the HL3 signal and the HH3 signal, 4 square-shaped data at the upper left of each of the LH2 signal, the HL2 signal and the HH2 signal, 16 square-shaped data at the upper left of each of the LH1 signal, the HL1 signal and the HH1 signal represent the same pixel on an original image (shaded portions in FIG. 25).
Description is now made of a method of embedding digital information after the above-mentioned discrete wavelet transform is performed for band division. The embedding method described next below is a well-known technique for those skilled in the art. Matui et al. realize digital watermarking by combining the discrete wavelet transform and the conventional embedding method.
The conventional embedding method utilizes such visual characteristics of human being who easily overlook noises in a high frequency region but detect noises in a low frequency region. That is, in an image signal, energy is concentrated in its low frequency component. Therefore, in output components in the discrete wavelet transform, an LL signal representing a low frequency component of the image signal is an important band component. On the other hand, three types of multi-resolution representation (MRR) components which are an LH signal, an HL signal and an HH signal representing high frequency components of the image signal are not considered so important band components.
With respect to each of the LH1 signal, the HL1 signal and the HH1 signal which are the not-so-important MRR components, the logical value of a low-order bit (the least significant bit (LSB) if possible) of a wavelet coefficient, which is not zero, out of wavelet coefficients in the MRR component is transformed in accordance with the bit value of digital information to be embedded on the basis of predetermined regularity, to perform digital watermarking.
In the technique by Matui et al., the digital information is embedded in only the MRR components which are high frequency components of an image calculated by the discrete wavelet transform and their respective low-order bits which hardly affect the change in the image. Therefore, the degradation of the quality of an image reconstructed by the signal in which the digital information has been embedded is so slight that it would not be perceived with the eyes of human being.
In the case of display and distribution on a network, the signals in the respective frequency bands which have been subjected to the embedding processing are synthesized by a band synthesizing device (in short, performing processing reverse to the discrete wavelet transform), to reconstruct an image signal. Further, in order to extract the embedded digital information from the reconstructed image signal, the discrete wavelet transform is performed to extract the logical value transformed in the embedding processing.
In the above-mentioned technique by Matui et al., however, the digital information is embedded in the LH1 signal, the HL1 signal and the HH1 signal which are the highest of the high frequency (MRR) components, the following problems remain:
1. By frequency-transforming the image in which the digital information has been embedded, and then rewriting and cutting the high frequency components of the image, the embedded digital information can be removed relatively simply.
2. Even by subjecting the image in which the digital information has been embedded to low-pass filtering, the high frequency components of the image are reduced, so that the embedded information is lost.
3. Furthermore, in image communications, for example, the image is transmitted upon being compressed. In the case, the high frequency components of frequency coefficients are generally coarsely quantized to perform irreversible compression, so that the effect on the high frequency components of the image is increased. That is, the respective low-order bits of the wavelet coefficients in the MRR component of the image are significantly changed, so that the embedded information cannot be correctly extracted.
Therefore, the inventors and others of the present application have proposed a new digital watermark technique (hereinafter referred to as earlier application) in xe2x80x9cJapanese Patent Application No. 10-196361xe2x80x9d previously filed in order to solve the problems in the conventional digital watermark technique.
An embedding method in the earlier application is a method of setting an output value in quantization to an even value or an odd value in its closest vicinity in accordance with the bit value of digital information to be embedded when wavelet coefficients are subjected to linear quantization. That is, the lowest frequency band component of an image signal (hereinafter referred to as MRA component (multi-resolution approximation component)) is divided into a plurality of blocks in a predetermined block size, to embed the digital information in the average value of the wavelet coefficients in each of the blocks using the above-mentioned embedding method.
In the earlier application, the MRA which is the low frequency component of the image signal which has been calculated by discrete wavelet transform is thus subjected to digital information embedding processing utilizing a quantizing error.
The technique by Nakamura et al. will be briefly described. In the technique by Nakamura et al., a digital image signal is first divided into blocks each composed of 8 by 8 pixels in the case of embedding, and each of the blocks is subjected to a DCT operation to transform the frequency thereof (i.e., to find frequency coefficients). One frequency coefficient C is then extracted at random from the frequency coefficients in low frequency components excluding a frequency coefficient in a DC component (DC coefficient), and the frequency coefficient C is quantized again using a quantization step-size h, as indicated by the following equation (1), to find a quantization value q. A function int[X] represents linear quantization of X:
q=int[C/h]xc3x97h xe2x80x83xe2x80x83(1) 
In the technique by Nakamura et al., an integer closest to the frequency coefficient C is selected, to correct the value of the frequency coefficient C on the basis of the following equation (2) if a bit b of the digital information to be embedded in a block is xe2x80x9c0xe2x80x9d and on the basis of the following equation (3) if the bit b is xe2x80x9c1xe2x80x9d. A character t denotes a natural number for selecting the closest vicinity.
C←q+ht+q/4 xe2x80x83xe2x80x83(2) 
C←q+ht+3q/4 xe2x80x83xe2x80x83(3) 
On the other hand, in the technique by Nakamura et al., in the case of extraction, the frequency coefficient C in which the digital information has been embedded is first extracted, and is then requantized by the foregoing equation (1) using the quantization step-size h, the find a quantization value q. A difference p (=Cxe2x88x92q) between the quantization value q and the frequency coefficient C is then found, to make judgment using the following equations (4) or (5), and extract the value of the bit b of the embedded digital information:
0xe2x89xa6p less than h/2xe2x86x92b=0 xe2x80x83xe2x80x83(4) 
h/2xe2x89xa6p less than hxe2x86x92b=1 xe2x80x83xe2x80x83(5) 
In the technique by Nakamura et al., therefore, a third person has little clue as to the embedded digital information by concealing the position where the frequency coefficient C, out of the frequency coefficients in the low frequency components excluding the DC coefficient, is embedded using a pseudo-random number string, and by introducing an error component caused by requantization using the parameter h.
In the earlier application, however, the digital information is embedded in all the MRA components which are the lowest frequency components, so that the following problems sill remain:
1. As already described, the visual characteristics of a human being generally have the property of easily overlooking noises in a high frequency region but detecting noises in a low frequency region. Further, a flat part of an image signal has energy almost concentrated in an MRA component (low frequency component), and a detailed part of the image signal corresponds to an MRR component (high frequency component). That is, in output components in discrete wavelet transform, if the MRA component corresponding to the flat part of the image signal is corrected by an embedding operation no matter how slight the correction is, the quality of the image is degraded.
2. The MRA component is divided into a plurality of blocks in a predetermined block size, and digital information is embedded in all the blocks. When a embedding algorithm is made public one, therefore, the embedded digital information may be decoded.
On the other hand, in the technique by Nakamura et al., the digital information is embedded in all the blocks, so that the quality of the image is degraded in the block corresponding to a flat part of the digital image signal. Further, the digital information is only embedded in one frequency coefficient C in the low frequency components. Accordingly, the embedded digital information may be lost against a third person""s attempts for unauthorized utilization (e.g., image compression).
Therefore, an object of the present invention is to provide an apparatus for and a method of embedding and extracting digital information in an MRA component corresponding to a detailed part of an image signal or MRR components in lower frequency bands (deeper hierarchical signal) such that the quality of an image is hardly degraded at the time of decoding, and providing a third person with little clue as to the embedded digital information.
Another object of the present invention is to provide an apparatus for and a method of embedding and extracting digital information, in which digital information is embedded using the average value of a plurality of frequency coefficients out of frequency coefficients in low frequency components excluding a DC component, digital information is embedded in a block corresponding to a detailed part of an image signal such that the quality of an image is hardly degraded at the time of decoding, and the embedded digital information also remains without being lost (generally, this is called xe2x80x9cthe digital information has resistancexe2x80x9d) against a third person""s attempts for unauthorized utilization.
Still another object of the present invention is to provide a digital watermark system having an affinity for MPEG (Moving Picture Experts Group)/JPEG (Joint Photographic Experts Group) which is the existing image coding.
The present invention has the following features to attain objects above.
A first aspect is directed to a digital information embedding apparatus for embedding inherent digital information in a digital image signal, comprising:
a band division portion for dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
a block division for dividing the frequency band in which the digital information is to be embedded (hereinafter referred to as embedding object region) out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
a key generation portion for respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
an information embedding portion for specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively embedding the corresponding information composing the digital information in the wavelet coefficients in the specified block in the embedding object region; and
a band synthesis portion for reconstructing a digital image signal in which the digital information has been embedded using the embedding object region after the embedding processing and the plurality of frequency bands other than the embedding object region.
As described above, in the first aspect, the digital information is embedded in the block specified on the basis of the secondary key. Consequently, a third person not knowing a method of generating the secondary key has little clue as to the embedded digital information.
A second aspect is directed to a digital information embedding apparatus for embedding inherent digital information in a digital image signal, comprising:
a band division portion for dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
a block division portion for dividing the frequency band in which the digital information is to be embedded (embedding object region) out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
a key generation portion for respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
an energy analysis portion for specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively calculating the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the same space representation region as the position of the specified block in the embedding object region;
an information embedding portion for controlling the key generation portion such that another secondary key is generated when the energies are less than a predetermined set value, and respectively embedding the corresponding information composing the digital information in the wavelet coefficients in the specified block in the embedding object region when the energies are not less than the predetermined set value; and
a band synthesis portion for reconstructing a digital image signal in which the digital information has been embedded using the embedding object region after the embedding processing and the plurality of frequency bands other than the embedding object region.
As described above, in the second aspect, the digital information is embedded by judging the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the position of the block specified on the basis of the secondary key. Consequently, the quality of an image is hardly degraded at the time of decoding, and a third person has little clue as to the embedded digital information.
According to a third aspect, further to the second aspect, the apparatus further comprises a coefficient multiplication portion for multiplying the wavelet coefficients whose energies have been calculated by a predetermined value U (U is a real number of not less than one) when the energies are in a range of not less than the predetermined set value nor more than a predetermined upper limit value, white multiplying the wavelet coefficients by a predetermined value L (L is a real number of not more than one) when the energies are in a range of less than the predetermined set value and not less than a predetermined lower limit value.
As described above, in the third aspect, only when the energies are close to a predetermined set value, the wavelet coefficients are multiplied by a predetermined value in the second aspect. Accordingly, it is possible to prevent erroneous detection/incomplete detection in a case where the energies are not less than the set value against a third person""s attempts for unauthorized utilization (for example, image compression). Consequently, the embedded digital information can be accurately extracted. Moreover, the quality of an image is hardly degraded and a third person has little clue as to the embedded digital information.
A fourth aspect is directed to a digital information extracting apparatus for extracting inherent digital information embedded by a particular apparatus in wavelet coefficients in a particular frequency band (embedding object region) obtained by a dividing a digital image signal using either discrete wavelet transformation or sub-band division. The apparatus in accordance with the fourth aspect comprises:
a band division portion, receiving the reconstructed digital image signal outputted by the particular apparatus, for dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
a block division portion for dividing the embedding object region out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
a key generation portion for respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information; and
an information detection portion for specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively detecting the information composing the embedded digital information from the wavelet coefficients in the specified block in the embedding object region.
As described above, in the fourth aspect, the embedded digital information is detected from the wavelet coefficients in the block specified on the basis of the secondary key. Consequently, a third person not knowing a method of generating the secondary key has little clue as to the embedded digital information.
A fifth aspect is directed to a digital information extracting apparatus for extracting inherent digital information embedded by a particular apparatus in wavelet coefficients in a particular frequency band (hereinafter referred to as embedding object region) obtained by dividing a digital image signal using either discrete wavelet transformation or sub-band division. The apparatus in accordance with the fifth aspect comprises:
a band division portion, receiving the reconstructed digital image signal outputted by the particular apparatus, for dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
a block division portion for dividing the embedding object region out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
a key generation portion for respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
an energy analysis portion for specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively calculating the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the same space representation region as the position of the specified block in the embedding object region; and
an information detection portion for respectively detecting the information composing the embedded digital information from the wavelet coefficients, in the block in the embedding object region, whose energies are not less than a predetermined set value.
As described above, in the fifth aspect, the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the position of the block specified on the basis of the secondary key are judged, to detect the embedded digital information. Consequently, a third person not knowing a method of generating the secondary key has little clue as to the embedded digital information.
A sixth aspect is directed to a digital information embedding apparatus for embedding inherent digital information in a digital image signal, comprising:
a block division portion for dividing the digital image signal into a plurality of blocks each composed of a plurality of predetermined pixels;
a frequency transform portion for frequency-transforming each of the blocks obtained by the division, to calculate frequency coefficients;
a coefficient calculation portion for selecting a particular frequency coefficient string out of the calculated frequency coefficients, and finding the absolute average value M and the energy of the frequency coefficient string;
a quantization portion for subjecting, with respect to the frequency coefficient string whose energy is not less than a predetermined threshold value, the found absolute average value M to linear quantization to calculate a quantization value using a predetermined quantization step-size Q (Q is an integer of not 10 less than one);
a signal replacement portion for replacing the quantization value with a predetermined value on the basis of the quantization value and the value of the digital information;
a coefficient correction portion for subjecting the replaced quantization value to inverse linear quantization using the quantization step-size Q, to calculate an average value Mxe2x80x2, and correcting the frequency coefficient string using a difference DM (=Mxe2x80x2xe2x88x92M) between the average value Mxe2x80x2 and the absolute average value M; and
an inverse frequency transform portion for subjecting the plurality of blocks after the correction to inverse frequency transformation, to reconstruct a digital image signal in which the digital information has been embedded.
As described above, in the sixth aspect, the energy of the frequency coefficient string is judged, to embed the digital information. Consequently, the quality of an image is hardly degraded at the time of decoding, and the embedded digital information can be prevented from being lost against a third person""s attempts for unauthorized utilization.
According to a seventh aspect, further to the sixth aspect, the coefficient calculation portion selects the frequency coefficient string in low frequency components excluding a DC component.
As described above, in the seventh aspect, the digital information is embedded in the frequency coefficient string in the low frequency components in the vicinity of the DC component in the sixth aspect. Accordingly, the digital information can be more accurately extracted without being affected by an unauthorized user""s attempts.
According to an eighth aspect, further to the sixth aspect, the coefficient portion adds a predetermined set value to the value of the difference DM when the quantization value is equal to a value of the threshold value divided by the quantization step-size Q.
As described above, in the eighth aspect, the value of the difference DM is operated in the sixth aspect, so that the quality of an image is hardly degraded at the time of decoding. Further, it is possible to prevent erroneous detection/incomplete detection in a case where the energy is not less than the threshold value against a third person""s attempts for unauthorized utilization. Consequently, the embedded digital information can be more accurately extracted.
According to a ninth aspect, further to the sixth aspect, the coefficient correction portion corrects the frequency coefficient to zero when the value of the difference DM is negative and the absolute value of the frequency coefficient is smaller than the absolute value of the difference DM.
As described above, in the ninth aspect, when the absolute value of the frequency coefficient is smaller than the absolute value of the difference DM in the sixth aspect, it is impossible to make such correction that the absolute value of the frequency coefficient becomes smaller, so that the frequency coefficient is reduced to zero. Consequently, it is possible to reduce an error in case where the digital information is embedded using the absolute average value M of the plurality of frequency coefficients. Accordingly, the digital information can be more accurately extracted.
A tenth aspect is directed to a digital information extracting apparatus for extracting inherent digital information embedded by a particular apparatus in a particular frequency coefficient string obtained by dividing a digital image signal into blocks and subjecting each of the blocks to frequency transformation. The apparatus in accordance with the tenth aspect comprises:
a block division portion, receiving the digital image signal outputted by the particular apparatus, for dividing the digital image signal into a plurality of blocks each composed of a plurality of predetermined pixels in accordance with the block division performed by the particular apparatus;
a frequency transform portion for frequency-transforming each of the blocks obtained by the division to calculate frequency coefficients in accordance with the frequency transformation performed by the particular apparatus;
a coefficient calculation portion for selecting the particular frequency coefficient string out of the calculated frequency coefficients, and finding the absolute average value M and the energy of the frequency coefficient string in accordance with a method of the calculation performed by the particular apparatus;
a quantization portion for subjecting, with respect to the frequency coefficient, string whose energy is not less than a predetermined threshold value, the absolute average value M to linear quantization to calculate a quantization value using a quantization step-size Q used in the particular apparatus; and
an information extraction portion for judging whether the quantization value is even or odd, and extracting the digital information embedded on the basis of the result of the judgment.
As described above, in the tenth aspect, as a result of extracting the absolute average value M of the particular frequency coefficient string, and calculating the quantization value of the absolute average value M of the frequency coefficient string using a predetermined method, the logical value of the embedded digital information is judged. Consequently, accurate digital information can be extracted without being affected by an unauthorized user""s attempts.
An eleventh aspect is directed to a method of embedding inherent digital information in a digital image signal, comprising:
the step of dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation transform or sub-band division;
the step of dividing the frequency band in which the digital information is to be embedded (embedding object region) out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
the step of respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
the steps of specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively embedding the corresponding information composing the digital information in the wavelet coefficients in the specified block in the embedding object region; and
the step of reconstructing a digital image signal in which the digital information has been embedded using the embedding object region after the embedding processing and the plurality of frequency bands other than the embedding object region.
As described above, in the eleventh aspect, the digital information is embedded in the block specified on the basis of the secondary key. Consequently, a third person not knowing a method of generating the secondary key has little clue as to the embedded digital information.
A twelfth aspect is directed to a method of embedding inherent digital information in a digital image signal, comprising:
the step of dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
the step of dividing the frequency band in which the digital information is to be embedded (embedding object region) out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
the step of respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
the steps of specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively calculating the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the same space representation region as the position of the specified block in the embedding object region;
the step of controlling the generating step such that another secondary key is generated when the energies are less than a predetermined set value;
the step of respectively embedding the corresponding information composing the digital information in the wavelet coefficients in the specified block in the embedding object region when the energy is not less than the predetermined set value; and
the step of reconstructing a digital image signal in which the digital information has been embedded using the embedding object region after the embedding processing and the plurality of frequency bands other than the embedding object region.
As described above, in the twelfth aspect, the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the position of the block specified on the basis of the secondary key is judged, to embed the digital information. Consequently, the quality of an image is hardly degraded at the time of decoding, and a third person has little clue as to the embedded digital information.
According to a thirteenth aspect, further to the twelfth aspect, the method further comprises:
the steps of multiplying the wavelet coefficients whose energies have been calculated by a predetermined value U when the energies are in a range of not less than the predetermined set value nor more than a predetermined upper limit value, while multiplying the wavelet coefficients by a predetermined value L when the energies are in a range of less than the predetermined set value and not less than a predetermined lower limit value.
As described above, in the thirteenth aspect, only when the energies are close to the predetermined set value in the twelfth aspect, the wavelet coefficients are multiplied by a predetermined value, thereby making it possible to prevent erroneous detection/incomplete detection in a case where the energies are not less than the set value against a third person""s attempts for unauthorized utilization (for example, image compression). Consequently, the embedded digital information can be accurately extracted. Moreover, the quality of an image is hardly degraded, and the third person has little clue as to the embedded digital information.
A fourteenth aspect is directed to a method of extracting inherent digital information embedded by a particular apparatus in wavelet coefficients in a particular frequency band (embedding object region) obtained by dividing a digital image signal using either discrete wavelet transform or sub-band division. The method in accordance with the fourteenth aspect comprises:
the step of receiving a reconstructed digital image signal outputted by the particular apparatus, and dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
the step of dividing the embedding object region out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
the step of respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information; and
the steps of specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively detecting the information composing the embedded digital information from the wavelet coefficients in the specified block in the embedding object region.
As described above, in the fourteenth aspect, the embedded digital information is detected from the wavelet coefficients in the block specified on the basis of the secondary key. Consequently, a third person not knowing a method of generating the secondary key has little clue as to the embedded digital information.
A fifteenth aspect is directed to a method of extracting inherent digital information embedded by a particular apparatus in wavelet coefficients in a particular frequency band (embedding object region) obtained by dividing a digital image signal using either discrete wavelet transformation or sub-band division. The method in accordance with the fifteenth aspect comprises:
the step of receiving a reconstructed digital image signal outputted by the particular apparatus, and dividing the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
the step of dividing the embedding object region out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
the step of respectively generating secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
the steps of specifying the block in the embedding object region on the basis of each of the generated secondary keys, and respectively calculating the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the same space representation region as the position of the specified block in the embedding object region; and
the step of respectively detecting the information composing the embedded digital information from the wavelet coefficients, in the block in the embedding object region, whose energies are not less than a predetermined set value. of the wavelet coefficients in the plurality of frequency bands, other than the embedding object region, corresponding to the position of the block specified on the basis of the secondary key is judged, to detect the embedded digital information. Consequently, the a third person not knowing a method of generating the secondary key has little clue as to the embedded digital information.
A sixteenth aspect is directed to a method of embedding inherent digital information in a digital image signal, comprising:
the step of dividing the digital image signal into a plurality of blocks each composed of a plurality of predetermined pixels;
the steps of frequency-transforming each of the blocks obtained by the division, to calculate frequency coefficients;
the steps of selecting a particular frequency coefficient string out of the calculated frequency coefficients, and finding the absolute average value M and the energy of the frequency coefficient string;
the step of subjecting, with respect to the frequency coefficient string whose energy is not less than a predetermined threshold value, the found absolute average value M to linear quantization to calculate a quantization value using a predetermined quantization step-size Q;
the steps of replacing the quantization value with a predetermined value on the basis of the quantization value and the value of the digital information;
the steps of subjecting the replaced quantization value to inverse linear quantization to calculate an average value Mxe2x80x2 using the quantization step-size Q, and correcting the frequency coefficient string using a difference DM between the average value Mxe2x80x2 and the absolute average value M; and
the step of subjecting the plurality of blocks after the correction to inverse frequency transformation, to reconstruct a digital image signal in which the digital information has been embedded.
As described above, in the sixteenth aspect, the energy of the frequency coefficient string is judged, to embed the digital information. Consequently, the quality of an image is hardly degraded at the time of decoding, and the embedded digital information can be prevented from being lost against a third person""s attempts for unauthorized utilization.
According to a seventeenth aspect, further to the sixteenth aspect, in the finding steps, the frequency coefficient string in low frequency components excluding a DC component is selected.
As described above, in the seventeenth aspect, the digital information is embedded in the frequency coefficient string in the low frequency components in the vicinity of the DC component in the sixteenth aspect. Accordingly, the digital information can be more accurately extracted without being affected by an unauthorized user""s attempts.
According to an eighteenth aspect, further to the sixteenth aspect, in the correcting steps, a predetermined set value is added to the value of the different DM when the quantization value is equal to a value of the threshold value divided by the quantization step-size Q.
As described above, in the eighteenth aspect, the value of the difference DM is operated in the sixteenth aspect, so that the quality of an image is hardly degraded at the time of decoding. Further, it is possible to prevent erroneous detection/incomplete detection in a case where the energy is not less than the threshold value against a third period""s attempts for unauthorized utilization. Consequently, the embedded digital information can be more accurately extracted.
According to a nineteenth aspect, further to the sixteenth aspect, in the correcting steps, the frequency coefficient is corrected to zero when the value of the difference DM is negative and the absolute value of the frequency coefficient is smaller than the absolute value of the different DM.
As described above, in the nineteenth aspect, when the absolute value of the frequency coefficient is smaller than the absolute value of the difference DM in the sixteenth aspect, it is impossible to make such correction that the absolute value of the frequency coefficient becomes smaller, so that the frequency coefficient is reduced to zero. Consequently, it is possible to reduce an error in a case where the digital information is embedded using the absolute average value M of the plurality of frequency coefficients. Accordingly, the digital information can be more accurately extracted.
A twentieth aspect is directed to a method of extracting inherent digital information embedded by a particular apparatus in a particular frequency coefficient string obtained by dividing a digital image signal into blocks and subjecting each of the blocks to frequency transformation. The method in accordance with the twentieth aspect comprises:
the step of receiving the digital image signal outputted by the particular apparatus, and dividing the digital image signal into a plurality of blocks each composed of a plurality of predetermined pixels in accordance with the block division performed by the particular, apparatus;
the step of frequency-transforming each of the blocks obtained by the division to calculate frequency coefficients in accordance with the frequency transform performed by the particular apparatus;
the steps of selecting the particular frequency coefficient string out of the calculated frequency coefficients, and finding the absolute average value M and the energy of the frequency coefficient string in accordance with a method of the calculation performed by the particular apparatus;
the steps of subjecting, with respect to the frequency coefficient string whose energy is not less than a predetermined threshold value, the absolute average value M to linear quantization to calculate a quantization value using a quantization step-size Q used in the particular apparatus; and
the steps of judging whether the quantization value is even or odd, and extracting the digital information embedded on the basis of the result of the judgment.
As described above, in the twentieth aspect, as a result of extracting the absolute average value M of the particular frequency coefficient string, and calculating the quantization value of the absolute average value M of the frequency coefficient string using a predetermined method, the logical value of the embedded digital information is judged. Consequently, the digital information can be accurately extracted without being affected by an unauthorized user""s attempts.
A twenty-first aspect is directed to a recording medium having a program executed in a computer recorded thereon, the program being operable to instruct the computer to:
divide the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
divide the frequency band in which the digital information is to be embedded (embedding object region) out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
respectively generate secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
specify the block in the embedding object region on the basis of each of the generated secondary keys, and respectively embed the corresponding information composing the digital information in the wavelet coefficients in the specified block in the embedding object region; and
reconstruct a digital image signal in which the digital information has been embedded using the embedding object region after the embedding processing and the plurality of frequency bands other than the embedding object region.
A twenty-second aspect is directed to a recording medium having a program executed in a computer recorded thereon, the program being operable to instruct the computer to:
divide the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
divide the frequency band in which the digital information is to be embedded (embedding object region) out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
respectively generate secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
specify the block in the embedding object region on the basis of each of the generated secondary keys, and respectively calculating the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the same space representation region as the position of the specified block in the embedding object region;
control the generating step such that another secondary key is generated when the energies are less than a predetermined set value;
respectively embed the corresponding information composing the digital information in the wavelet coefficients in the specified block in the embedding object region when the energies are not less than the predetermined set value; and
reconstruct a digital image signal in which the digital information has been embedded using the embedding object region after the embedding processing and the plurality of frequency bands other than the embedding object region.
According to a twenty-third aspect, further to the twenty-second aspect, the program being further operable to instruct a computer to multiply the wavelet coefficients whose energies have been calculated by a predetermined value U when the energies are in a range of not less than the predetermined set value nor more than a predetermined upper limit value, while multiplying the wavelet coefficients by a predetermined value L when the energies are in a range of less than the predetermined set value and not less than a predetermined lower limit value.
A twenty-fourth aspect is directed to a recording medium having a program executed in a computer recorded thereon, the program being operable to instruct the computer to:
receive, with respect to inherent digital information embedded by a particular apparatus in wavelet coefficients in a particular frequency band (embedding object region) obtained by dividing, a digital image signal using either discrete wavelet transform or sub-band division, a reconstructed digital image signal outputted by the particular apparatus, and divide the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
divide the embedding object region out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
respectively generate secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information; and
specify the block in the embedding object region on the basis of each of the generated secondary keys, and respectively detect the information composing the embedded digital information from the wavelet coefficients in the specified block in the embedding object region.
A twenty-fifth aspect is directed to a recording medium having a program executed in a computer recorded thereon, the program being operable to instruct the computer to:
receive with respect to inherent digital information embedded by a particular apparatus in wavelet coefficients in a particular frequency band (embedding object region) obtained by dividing, a digital image signal using either discrete wavelet transform or sub-band division, a reconstructed digital image signal outputted by the particular apparatus, and divide the digital image signal into a plurality of frequency bands to obtain wavelet coefficients using either discrete wavelet transformation or sub-band division;
divide the embedding object region out of the frequency bands obtained by the division into a plurality of blocks in a predetermined block size;
respectively generate secondary keys having different values from a key having a predetermined value using a predetermined function with respect to information composing the digital information;
specify the block in the embedding object region on the basis of each of the generated secondary keys, and respectively calculate the energies of the wavelet coefficients in each of the plurality of frequency bands, other than the embedding object region, corresponding to the same space representation region as the position of the specified block in the embedding object region; and
respectively detect the information composing the embedded digital information from the wavelet coefficients, in the block in the embedding object region, whose energies are not less than a predetermined set value.
A twenty-sixth aspect is directed to a recording medium having a program executed in a computer recorded thereon, the program being operable to instruct the computer to:
divide a digital image signal into a plurality of blocks each composed of a plurality of predetermined pixels;
frequency-transform each of the blocks obtained by the division, to calculate frequency coefficients;
select a particular frequency coefficient string out of the calculated frequency coefficients, and find the absolute average value M and the energy of the frequency coefficient string;
subject with respect to the frequency coefficient string whose energy is not less than a predetermined threshold value, the found absolute average value M to linear quantization to calculate a quantization value using a predetermined quantization step-size Q;
replace the quantization value with a predetermined value on the basis of the quantization value and the value of the digital information;
subject the replaced quantization value to inverse linear quantization to calculate an average value Mxe2x80x2 using the quantization step-size Q, and correcting the frequency coefficient string using a difference DM between the average value Mxe2x80x2 and the absolute average value M; and
subject the plurality of blocks after the correction to inverse frequency transformation, to reconstruct a digital image signal in which the digital information has been embedded.
According to a twenty-seventh aspect, further to the twenty-sixth aspect, in finding, the frequency coefficient string in low frequency components excluding a DC component is selected.
According to a twenty-eighth aspect, further to the twenty-sixth aspect, in correcting, a predetermined set value is added to the value of the difference DM when the quantization value is equal to a value of the threshold value divided by the quantization step-size Q.
According to a twenty-ninth aspect, further to the twenty-sixth aspect, in correcting, the frequency coefficient is corrected to zero when the value of the difference DM is negative and the absolute value of the frequency coefficient is smaller than the absolute value of the difference DM.
A thirtieth aspect is directed to a recording medium having a program executed in a computer recorded thereon, the program being operable to instruct the computer to:
receive with respect to inherent digital information embedded by a particular apparatus in a particular frequency coefficient string, obtained by dividing a digital image signal into blocks and subjecting each of the blocks to frequency transformation, a reconstructed digital image signal outputted by the particular apparatus, and divide the digital image signal into a plurality of blocks each composed of a plurality of predetermined pixels in accordance with the block division performed by the particular apparatus;
frequency-transform each of the blocks obtained by the division to calculate frequency coefficients in accordance with the frequency transformation performed by the particular apparatus;
select the particular frequency coefficient string out of the calculated frequency coefficients, and find the absolute average value M and the energy of the frequency coefficient string in accordance with a method of the calculation performed by the particular apparatus;
subject with respect to the frequency coefficient string whose energy is not less than a predetermined threshold value, the absolute average value M to linear quantization to calculate a quantization value using a quantization step-size Q used in the particular apparatus; and
judge whether the quantization value is even or odd, and extract the digital information embedded on the basis of the result of the judgment.
As described above, the twenty-first to thirtieth aspects are directed to the recording medium having the program for carrying out a method of embedding and extracting digital information in the eleventh to twentieth aspects recorded thereon. This corresponds to the supply of the method of embedding and extracting digital information in the eleventh to twentieth aspects to the existing apparatus in the form of software.